<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>开课吧——九九乘法表</title>
    <style>
        body{
            margin: 0;
            font-size: 0;
        }
        div{
            width: 120px;
            height: 40px;
            line-height: 40px;
            text-align: center;
            color: #fff;
            margin-right: 2px;
            margin-bottom: 2px;
            border-radius: 5px;
            background: lightcoral;
            display: inline-block;
            font-size: 16px;
            position: absolute;
        }
        .wrap{
            background: url('./img/bg.jpg') no-repeat center;
            height: 1067px;
            overflow: hidden;
        }
        #box{
            width: 1157px;
            height: 436px;
            background: linear-gradient(45deg,#dad4fa,#edebfd);
            border-radius: 20px;
            padding: 30px 0 0 30px;
            box-sizing: border-box;
            margin: 454px auto 0;
            position: relative;
        }
        /*
            '#78cc64','#58cd7e','#4fcdad','#4cc7dd','#469ee8','#465de8','#5846e8','#8346e8','#9e46e8'
        */
    </style>
</head>
<body>
<section class="wrap">
    <section id="box"></section>
</section>
<script>
    /*

    // var x = 1; 用j进行代替
    // var y = 1; 用i进行代替

    思路：
    每一排为一次大循环，每一次大循环中再用小循环生成列，用for循环嵌套for循环来做，也就是for套for。
    分别用i和j代表两个有关联的未知数。

    1 * 1
    1 * 2    2 * 2
    1 * 3    2 * 3    3 * 3
    1 * 4    2 * 4    3 * 4    4 * 4

    j * i                                    (此时i为1)
    j * （i+1）  j++ * （i+1）               （此时i为2 循环i次跳出循环）
    j * （i+2）  j++ * （i+2）  j++ * （i+2）（此时i为3 循环i次跳出循环）

    i在这里代表第几次大循环，和每次小循环的最高到第几次结束。
    j在这里代表每次小循环的其中一个乘数，另一个乘数在每一横排其实都是不变的，这个数和i相等，如第二排乘的都是2,第三排乘的都是3。

    */
    var str = '';
    var colorArr = ['#78cc64','#58cd7e','#4fcdad','#4cc7dd','#469ee8','#465de8','#5846e8','#8346e8','#9e46e8'];
    for(var i=1;i<10;i++){
        for(var j=1;j<=i;j++){
            console.log(j,i);
            //不要直接修改box的innerHTML会有性能问题，每次循环都会读取一次innerHTML,存成一个变量，都生成完再赋给innerHTML.
            //这里用ES6的模板字符串，每一行给一个不同的背影颜色，然后用定位做下换行的效果。
            // str += `<div> ${j} * ${i} = ${j*i} </div>>`;
            // str += `<div style="background:${colorArr[i-1]}"> ${j} * ${i} = ${j*i} </div>>`;
            str += `<div style="background:${colorArr[i-1]};top:${i*42}px;left:${(j-1)*122+30}px">
                    ${j} * ${i} = ${j*i}
                    </div>>`;
        }
    }
    let box = document.querySelector('#box');
    box.innerHTML = str;
</script>
</body>
</html>